<?php

/**
 * Entité modèle : Table de map des langages
 * Associe des codes de langages tel que fr_FR
 * à d'autres codes afin d'obtenir un code 
 * adapté ou proche dans le cas où la langue
 * n'est pas disponible.
 */
class Models_Core_LangageMap extends Models_TableGite
{
	protected $_name = 'core_langage_map';
	
	const SQL_SELECT_MAP_CODE = 'SELECT core_langage.code FROM core_langage INNER JOIN core_langage_map ON core_langage.id = core_langage_map.langage_id WHERE core_langage_map.code = ? AND core_langage.actif = true';

	/**
	 * Retourne le code de langage associé à celui donné
	 * 
	 * @param string $code un code de langage
	 * @return string un code de langage associé
	 */
	public static function getMapCode($code) {
		$result = Manager::getDbGiteNouette()->fetchCol(self::SQL_SELECT_MAP_CODE, $code);
		if (count($result) == 1) {
			return $result[0];
		}
		else {
			return null;
		}
	}
}